package com.cykj.pos.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;
import com.cykj.common.annotation.Excel;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import java.util.Date;
import java.util.Map;
import java.util.HashMap;
import java.math.BigDecimal;

/**
 * 未/未激活扣款记录对象 aiz_deduction_records
 *
 * @author weijianbo
 * @date 2025-03-05
 */
@Data
@ToString
@EqualsAndHashCode
@NoArgsConstructor
@Accessors(chain = true)
@TableName("aiz_deduction_records")
public class AizDeductionRecords implements Serializable {

private static final long serialVersionUID=1L;


    /** $column.columnComment */
    @TableId(value = "deduction_id")
    private Long deductionId;

    /** $column.columnComment */
    @Excel(name = "${comment}" , readConverterExp = "$column.readConverterExp()")
    private String deductionSn;

    /** 代理id */
    @Excel(name = "代理id")
    private Long deductionMerchId;

    /** 代理姓名 */
    @Excel(name = "代理姓名")
    private String deductionMerchName;

    /** 1未激活2伪激活 */
    @Excel(name = "1未激活2伪激活")
    private String deductionType;

    /** 扣款金额 */
    @Excel(name = "扣款金额")
    private Long deductionAmount;

    /** 扣款原因 */
    @Excel(name = "扣款原因")
    private String deductionResult;

    /** 0扣款中1扣款结束 */
    @Excel(name = "0扣款中1扣款结束")
    private String deductionStatus;

    /** 剩余待扣款金额 */
    @Excel(name = "剩余待扣款金额")
    private Long deductionLastAmount;

    /** 扣款时间 */
    @Excel(name = "扣款时间" , width = 30, dateFormat = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date deductionTime;

    @TableField(exist = false)
    private Map<String, Object> params = new HashMap<>();

    @TableField(exist = false)
    private Long userId;

    @TableField(exist = false)
    private int pageNo;

    @TableField(exist = false)
    private int pageSize;

    // 搜索开始时间
    @TableField(exist = false)
    private String startTime;
    //搜索结束时间
    @TableField(exist = false)
    private String endTime;
    //搜索结束时间
    @TableField(exist = false)
    private Long deptId;
}
